写三个排序 A[100]

来源:百度知道 编辑:UC知道 时间:2024/06/28 11:59:42

快速排序

快速排序
#include<stdio.h>
#define MAXN 200000
long a[MAXN];
void quick(long a[],int low,int up)
{
int i,j;
int t;
if(low<up)
{
i=low;
j=up;
t=a[low];
while(i!=j)
{
while(i<j&&a[j]>t)
j--;
if(i<j) a[i++]=a[j];
while(i<j&&a[i]<=t)
i++;
if(i<j) a[j--]=a[i];
}
a[i]=t;
quick(a,low,i-1);
quick(a,i+1,up);
}
}
int main()
{
int i,t,k,u;
scanf("%d%d",&t,&u);
for(i=0;i<t;i++)
{
scanf("%d",&a[i]);
}
q